

import 'package:flutter/cupertino.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:get/get.dart';
import 'package:shadcn_ui/shadcn_ui.dart';

import 'SinglePickerWidget.dart';


class DialogUtil{
  // static   showConfirmDialog(BuildContext context,String title,String content,
  //     Function() onOK){
  //   showOkCancelAlertDialog(context: context,title: title,message:content,okLabel: '确定',
  //       cancelLabel: '取消',style: AdaptiveStyle.iOS).then((value) => {
  //         if(value.index==0){//点击了确定
  //           onOK()
  //         }
  //  });
  // }
  // static showConfirmDialogNOCancle(BuildContext context,String title,String content,Function() onOK){
  //   showOkAlertDialog(context: context,title: title,message:content,okLabel: '确定'.tr,
  //       style: AdaptiveStyle.iOS).then((value) => {
  //     if(value.index==0){//点击了确定
  //       onOK()
  //     }
  //   });
  //
  //
  // }
  //
  //
  // static   showInputOneDialog(BuildContext context,String title,String content,String hint,
  //     Function(String v) onOK) async {
  //   final result= await showTextInputDialog(context: context, textFields:  [
  //     DialogTextField(
  //       hintText: hint,
  //       initialText:content,
  //       validator: (value) =>
  //       value!.isEmpty ? hint : null,
  //     ),
  //   ],
  //   style:AdaptiveStyle.iOS,
  //   title: title);
  //   String str=result![0];
  //   onOK(str);
  //
  // }
  //
  // static   showInputNumberDialog(BuildContext context,String title,String content,String hint,
  //     Function(String v) onOK) async {
  //   final result= await showTextInputDialog(context: context, textFields:  [
  //     DialogTextField(
  //       hintText: hint,
  //       keyboardType: TextInputType.number,
  //       initialText:content,
  //       validator: (value) =>
  //       value!.isEmpty ? hint : null,
  //     ),
  //   ],
  //       style:AdaptiveStyle.iOS,
  //       title: title);
  //   String str=result![0];
  //   onOK(str);
  //
  // }
  //
  // static showBottomSheetDialog(BuildContext context,String title,
  //      List<String> value,Function(int position,String v) onClickItem) async {
  //   List<SheetAction<String>> sheetdata=[];
  //   for(int i=0;i<value.length;i++){
  //     String str=value[i];
  //     String stringValue = '$i';
  //     sheetdata.add(SheetAction(label: str,key: stringValue));
  //   }
  //  final result= await showModalActionSheet<String>(context: context,title: title,actions: sheetdata,style:AdaptiveStyle.iOS ,
  //       cancelLabel: '取消');
  //   if(result!=null){
  //     int p=int.parse(result);
  //     String v=value[p];
  //     onClickItem(p,v);
  //
  //   }
  //
  // }

  static void showSelectDialog(BuildContext context){

    showCupertinoModalPopup(context: context, builder: (BuildContext context) {
      return Column(

        children: [
          SizedBox(height: 350,),
          Container(
            child: SinglePickerWidget(
              values: [{"label": "1", "value": 1},
                {"label": "2", "value": 2},
                {"label": "3", "value": 3},
                {"label": "4", "value": 4},
                {"label": "5", "value": 5}],
              value: 2,
              itemHeight: 50,
              unit: '℃',
              onChanged: (val) {
                print('val----$val');
              },
            ),
          ),

        ],

      );
    },);
  }



  static void  showConfimDialog(BuildContext context,var title,var content,var confirmStr,VoidCallback callBack){
    showShadDialog(
      context: context,
      builder: (context) => ShadDialog.alert(
        title: Text(title),
        description:  Padding(
          padding: const EdgeInsets.only(bottom: 8),
          child: Text(
            content,
          ),
        ),
        actions: [
          ShadButton.outline(
            child: const Text('取消'),
            onPressed: () => Navigator.of(context).pop(false),
          ),
          ShadButton(
            child:  Text(confirmStr),
            onPressed: () {
              callBack();
            },
          ),
        ],
      ),
    );
  }

  static void showLoading(String text){
    if(text.isEmpty){
      EasyLoading.show(
        maskType: EasyLoadingMaskType.black,
      );
    }else{
      EasyLoading.show(
        status: text,
        maskType: EasyLoadingMaskType.black,
      );
    }
  }

  static void dismissLoading(){
    EasyLoading.dismiss(animation: true);
  }

}